package com.edu.dao.impl;

import com.edu.bean.Admin;
import com.edu.dao.AdminDao;
import com.edu.dao.BaseDao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

/**
 * @Auther:zzp
 * @Date:2025/9/19-14:32:42
 */
public class AdminDaoImpl implements AdminDao {
    @Override
    public Admin selectAdmin(String adminName, String password) {
        Admin admin = null;
        Connection con = null;
        PreparedStatement ps = null;
        ResultSet res = null;
        String sql = "SELECT * FROM admin WHERE adminName = ? and password = ?";
        try {
            con = BaseDao.getCon();
            ps = con.prepareStatement(sql);
            ps.setString(1, adminName);
            ps.setString(2, password);
            res = ps.executeQuery();
            if(res.next()) {
                admin = new Admin();
                admin.setAdminId(res.getInt("adminId"));
                admin.setAdminName(res.getString("adminName"));
                admin.setPassword(res.getString("password"));
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } finally {
            BaseDao.closeAll(res, ps, con);;
        }
        return admin;
    }

    @Override
    public Admin selectAdminByAdminName(String adminName) {
        Admin admin = null;
        Connection con = null;
        PreparedStatement ps = null;
        ResultSet res = null;
        String sql = "SELECT * FROM admin WHERE account = ?";
        try {
            con = BaseDao.getCon();
            ps = con.prepareStatement(sql);
            ps.setString(1, adminName);
            res = ps.executeQuery();
            if(res.next()) {
                admin = new Admin();
                admin.setAdminId(res.getInt("adminId"));
                admin.setAdminName(res.getString("adminName"));
                admin.setPassword(res.getString("password"));
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } finally {
            BaseDao.closeAll(res, ps, con);
        }
        return admin;
    }
}
